GIT - https://git.gosuslugi.local/ervu/source/ervu-auth-admin-events-solar


Описание

Сервис для сбора информации об авторизациях и административных действий.
Собирает данные из топиков, передаёт скорректированное сообщение в топик Kafka для Солар.

Первая реализация сервиса была в задаче Невозможно найти сервер Jira для этого макроса. Причиной может быть конфигурация ссылки на приложение.


Назначение

  1. Собирает данные из топиков sso.auth.events и ui.admin.actions.audit
  2. Формирует новое сообщение, содержащее только необходимую Солару информацию
  3. Отправляет сообщение в топик ervu.auth.admin.events.solar


Схема взаимодействия


Kafka

Producer

ervu.solar.auth.admin.actions

В данный топик пишутся сообщения, успешно преобразованный в нужный формат и подходящие для передачи в Солар

example Развернуть исходный код

dlq.ervu.solar.auth.admin.actions

В данный топик пишутся сообщения, которые невозможно преобразовать в нужный формат для передачи в Солар

example Развернуть исходный код


Consumer


sso.auth.events

Топик для получения информации об авторизации, выходах из системы ЕРВУ (успешных и неуспешных)

example Развернуть исходный код

ui.admin.actions.audit

Топик для получения информации о действиях,  совершаемых администраторами внутри системы (успешных и неуспешных)

example Развернуть исходный код

Формат сообщения

Сообщение, отправляемое в топик, представляет собой плоскую структуру, содержащую следующие поля

Событие авторизации

  • source - топик-источник информации
  • event - событие (авторизация, выход из системы, ошибка авторизации)
  • result - результат события (Успешно/Не успешно)
  • eventTime - время события
  • userLogin - логин пользователя
  • userId - идентификатор пользователя (не передаётся в случае ошибки авторизации)
  • userFullName - ФИО пользователя (не передаётся в случае ошибки авторизации)
  • userPosition - роль пользователя  (не передаётся в случае ошибки авторизации)


Административные события

  • source - топик-источник информации
  • userId - идентификатор пользователя
  • event - событие
  • description - описание события
  • status - результат события
  • eventTime - время события
  • userFullName - ФИО пользователя, выполнившего операцию (администратора)
  • userPosition - должность пользователя, выполнившего операцию (администратора)
  • type - тип события
  • personId - идентификатор пользователя, над которым проводились изменения (не указывается, если вносились изменения не в УЗ)
  • personFullName - ФИО пользователя, над которым проводились изменения (не указывается, если вносились изменения не в УЗ)
  • personLogin - логин пользователя, над которым проводились изменения (не указывается, если вносились изменения не в УЗ)
Написать комментарий...